package org.darcy.service.privilege;

import java.util.List;

import org.darcy.entity.privilege.SysMenu;
import org.darcy.framework.generic.GenericService;

/**
 * 菜单权限
 **/
public interface SysMenuService extends GenericService<SysMenu> {

	/**
	 * 所有菜单列表
	 *
	 * @param menu 查询条件
	 * @return
	 */
	List<SysMenu> getAll(SysMenu menu);

	/**
	 * 通过用户id获取菜单列表
	 * 
	 * @param uid 用户id
	 */
	List<SysMenu> getMenuList(Integer uid);

	/**
	 * 添加或者修改菜单
	 * 
	 * @param menu 菜单
	 */
	void save(SysMenu menu);

	/**
	 * 删除菜单
	 * 
	 * @param ids 菜单id列表
	 */
	void deleteByIds(List<String> ids);

	/**
	 * 通过标识获取菜单
	 * 
	 * @param sn 标识
	 * @return
	 */
	SysMenu getModuleBySn(String sn);

}